Introduction to the Guardol Programming Language and Verification System

نویسندگان

  • David Hardin
  • Konrad Slind
  • Michael Whalen
  • Tuan-Hung Pham
چکیده

Guardol is a high-level programming language intended to facilitate the construction of correct network guards. The Guardol system generates Ada code from Guardol programs. It also provides specification and automated verification support: guard specifications are formally translated to SMT format and passed to a new decision procedure dealing with functions over tree-structured data. The result is that difficult properties of Guardol programs can be proved fully automatically. Guardol is a programming language and support environment being developed by the Trusted Systems group in the Advanced Technology Center of Rockwell Collins. Guardol is aimed at making the process of specifying, implementing, and certifying high assurance guards more efficient, flexible, and retargetable. The motivation for developing Guardol comes from experience Rockwell Collins has in developing guard implementations. Although execution aspects of programs (e.g., speed and size) are undoubtedly important, we have focused on a number of other significant aspects as well: the ability to target a wide variety of guard platforms; the ability to glue together existing or mandated functionality; the generation of both implementations and formal analysis artifacts; and sound and highly automated formal analysis. What is a guard? A guard mediates information sharing between security domains according to a specified policy. Some typical guard operations on a packet stream are the following: read field values in a packet; change fields in a packet; transform a packet by adding new fields; drop fields from a packet; construct audit messages; and remove an entire packet from stream. ∗Rockwell Collins Advanced Technology Center †University of Minnesota

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

The Guardol Language and Verification System

Guardol is a domain-specific language designed to facilitate the construction of correct network guards operating over treeshaped data. The Guardol system generates Ada code from Guardol programs and also provides specification and automated verification support. Guard programs and specifications are translated to higher order logic, then deductively transformed to a form suitable for a SMT-sty...

متن کامل

A short introduction to two approaches in formal verification of security protocols: model checking and theorem proving

In this paper, we shortly review two formal approaches in verification of security protocols; model checking and theorem proving. Model checking is based on studying the behavior of protocols via generating all different behaviors of a protocol and checking whether the desired goals are satisfied in all instances or not. We investigate Scyther operational semantics as n example of this...

متن کامل

A Microcomputer-Based Simulator for Digital Control Systems

A microcomputer-based simulator for digital control systems is proposed. The proposed simulator is a hybrid system in which the plant is simulated by conventional method of analog computers and other parts of the system including generation of input signal is performed digitally, using a Z-80 based microcomputer. To overcome the difficulty of programming in assembly language, and at the same ti...

متن کامل

Modeling and Evaluation of Stochastic Discrete-Event Systems with RayLang Formalism

In recent years, formal methods have been used as an important tool for performance evaluation and verification of a wide range of systems. In the view points of engineers and practitioners, however, there are still some major difficulties in using formal methods. In this paper, we introduce a new formal modeling language to fill the gaps between object-oriented programming languages (OOPLs) us...

متن کامل

Modeling and Evaluation of Stochastic Discrete-Event Systems with RayLang Formalism

In recent years, formal methods have been used as an important tool for performance evaluation and verification of a wide range of systems. In the view points of engineers and practitioners, however, there are still some major difficulties in using formal methods. In this paper, we introduce a new formal modeling language to fill the gaps between object-oriented programming languages (OOPLs) us...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2011